|
|
Main menu for Browse IS/STAG
Course info
KIV / ZPP
:
Course description
Department/Unit / Abbreviation
|
KIV
/
ZPP
|
Academic Year
|
2023/2024
|
Academic Year
|
2023/2024
|
Title
|
Fundamentals of Programming Practice
|
Form of course completion
|
Pre-Exam Credit
|
Form of course completion
|
Pre-Exam Credit
|
Accredited / Credits
|
Yes,
3
Cred.
|
Type of completion
|
Combined
|
Type of completion
|
Combined
|
Time requirements
|
Lecture
2
[Hours/Week]
|
Course credit prior to examination
|
No
|
Course credit prior to examination
|
No
|
Automatic acceptance of credit before examination
|
No
|
Included in study average
|
NO
|
Language of instruction
|
Czech
|
Occ/max
|
|
|
|
Automatic acceptance of credit before examination
|
No
|
Summer semester
|
75 / -
|
0 / -
|
6 / -
|
Included in study average
|
NO
|
Winter semester
|
0 / -
|
0 / -
|
0 / -
|
Repeated registration
|
NO
|
Repeated registration
|
NO
|
Timetable
|
Yes
|
Semester taught
|
Summer semester
|
Semester taught
|
Summer semester
|
Minimum (B + C) students
|
10
|
Optional course |
Yes
|
Optional course
|
Yes
|
Language of instruction
|
Czech
|
Internship duration
|
0
|
No. of hours of on-premise lessons |
0
|
Evaluation scale |
S|N |
Periodicity |
každý rok
|
Periodicita upřesnění |
|
Fundamental theoretical course |
No
|
Fundamental course |
No
|
Fundamental theoretical course |
No
|
Evaluation scale |
S|N |
Substituted course
|
None
|
Preclusive courses
|
N/A
|
Prerequisite courses
|
N/A
|
Informally recommended courses
|
N/A
|
Courses depending on this Course
|
N/A
|
Histogram of students' grades over the years:
Graphic PNG
,
XLS
|
Course objectives:
|
Within the course, the student will gain practical skills needed to work with basic and most commonly used software tools for managing and transferability of source code. Furthermore, the student will learn the basic orientation in the operating system, including remote access.
|
Requirements on student
|
Credit:
Students have to obtain a minimum number of points from their active participation (50%) and group project (50%).
The deadline for fulfilling the conditions for granting the credit is determined by the schedule of the course.
|
Content
|
1. Introduction to operating systems + Bash: basic orientation in operating systems, the example of Linux and installation options, basics of working in Bash environment, remote access, the example of cloud services.
2. Introduction to versioning systems: in short what is it, what are the types of versioning systems, basic commands, the example of creating a repository, first commit, push, pull, cloning of a foreign repository.
3. Working with branches: branching theory (visualization on graphs), basic commands (creating, deleting branches), branch -d -D -b, merge, rebase, the example of deleting a master at a local, merge & rebase.
4. Best practices & troubleshooting
5. Advanced work with Git
6. Working with IDE, static program analysis, linting
7. Project management
8. Tools and techniques of project management
9. Projects in GitLab
10. Gitlab CI / CD workflow
11. Introduction to containers: docker installation, virtualization of the whole system vs containers, basic description of Docker technology, basic commands, therm explanation: container, image.
12. Working with containers: dockerfile, docker.compose.yaml, Docker Hub, practice - examples.
13. Hackathon
|
Activities
|
|
Fields of study
|
|
Guarantors and lecturers
|
|
Literature
|
-
Basic:
Poulton, Nigel. Docker Deep Dive.. 2020. ISBN 9781800565135.
-
Recommended:
Valade, Janet. Linux : jdi do toho. 1. vyd. Praha : Grada, 2006. ISBN 80-247-1455-8.
-
Recommended:
Rankin, Kyle. Linux Knoppix na maximum : [100 tipů a řešení pro náročné]. Vyd. 1. Brno : Computer Press, 2006. ISBN 80-251-0993-3.
-
Recommended:
Chacon, Scott. Pro Git. 2009. ISBN 978-80-904248-1-4.
-
Recommended:
Vytlačil, Dalibor. Projektové řízení a řízení projektů.
-
Recommended:
Štefánek, Radoslav. Projektové řízení pro začátečníky. Vyd. 1. Brno : Computer Press, 2011. ISBN 978-80-251-2835-0.
-
Recommended:
Ruest, Danielle; Ruest, Nelson. Virtualizace : podrobný průvodce. Vyd. 1. Brno : Computer Press, 2010. ISBN 978-80-251-2676-9.
-
Recommended:
KLEMENT, Milan. Virtualizace a instalace OS Windows. Olomouc: Univerzita Palackého v Olomouci, 2015. ISBN 978-80-244-4568-7.
-
On-line library catalogues
|
Time requirements
|
All forms of study
|
Activities
|
Time requirements for activity [h]
|
Team project (50/number of students)
|
52
|
Contact hours
|
26
|
Total
|
78
|
|
Prerequisites
|
Knowledge - students are expected to possess the following knowledge before the course commences to finish it successfully: |
Explain basic control of computer |
Skills - students are expected to possess the following skills before the course commences to finish it successfully: |
Use Operating System (Windows / Linux) |
Use the computer at a basic level |
Efficiently use modern information technologies |
Competences - students are expected to possess the following competences before the course commences to finish it successfully: |
N/A |
N/A |
|
Learning outcomes
|
Knowledge - knowledge resulting from the course: |
Explain how to run a computer program |
Describe basic constructions of the programming language |
Manage source code |
Project design and sustainability |
Skills - skills resulting from the course: |
Perform the decomposition of the problem to partial subproblems |
Build a general procedure to resolve the problem |
Use basic features of the development environment |
Create a functional source code from general instructions |
Use basic programming language constructs |
Competences - competences resulting from the course: |
Analyze the problem and decompose it
Clearly formulate the procedure needed to resolve the problem |
|
Assessment methods
|
Knowledge - knowledge achieved by taking this course are verified by the following means: |
Skills demonstration during practicum |
Skills - skills achieved by taking this course are verified by the following means: |
Skills demonstration during practicum |
Competences - competence achieved by taking this course are verified by the following means: |
Continuous assessment |
|
Teaching methods
|
Knowledge - the following training methods are used to achieve the required knowledge: |
Interactive lecture |
Self-study of literature |
Skills demonstration |
Task-based study method |
One-to-One tutorial |
Skills - the following training methods are used to achieve the required skills: |
Skills demonstration |
Students' portfolio |
Task-based study method |
One-to-One tutorial |
Individual study |
Competences - the following training methods are used to achieve the required competences: |
Lecture with visual aids |
Skills demonstration |
Task-based study method |
Discussion |
Students' portfolio |
|
|
|
|